﻿// 3707. 循环移位.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include <string>


using namespace std;

/*
https://www.acwing.com/problem/content/3710/

给出字符串 A和 B，判断 A是否是 B 的进行循环移位得到的子串。

如 A=“ABC”，B=“BCDEFA”，则是。

输入格式
输入包含多组测试数据。

每组数据占一行，包含两个空格隔开的字符串 A 和 B。

输出格式
每组数据输出一行结果，如果是循环移位子串输出 yes，否则输出 no。

数据范围
输入最多包含 100组数据。
字符串长度不超过 100且只包含大写字母。

输入样例：
ABC BCDEFA
ABC BADEFC
输出样例：
yes
no
*/

string a;
string b;


bool check(string a, string b, int idx) {
	for (int i = 0; i < a.size(); i++) {
		if (idx + i >= b.size()) return false;
		if (a[i] != b[idx + i]) {
			return false;
		}
	}
	return true;
}

int main()
{
	while (cin >> a >> b) {
		if (a.size() > b.size()) { cout << "no" << endl; continue; }
		b += b; bool res = false;
		for (int i = 0; i < b.size();i++) {
			if (b[i] == a[0] && i + a.size() <= b.size()) {
				res = check(a, b, i);
				if (res) {break;}
			}
		}

		if(res)
			cout << "yes" << endl; 
		else
			cout << "no" << endl;
	}
}

 